package com.example.demo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 退款表(Refund)实体类
 *
 * @author 杨丽辉
 * @since 2021-03-18 15:05:43
 */
@ApiModel("退款表")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Refund implements Serializable {
    private static final long serialVersionUID = 460250121027415384L;
        /**
    *主键
    * 退款表id
    * isnull 1
    */
    @ApiModelProperty(value="退款表id", position=1)
    @TableId(type = IdType.ASSIGN_ID)
    private String refundId;

    /**
    * 用户id
    * isnull 0
    */        @ApiModelProperty(value="用户id",position=2)
    private String userId;
    /**
    * 订单id
    * isnull 0
    */        @ApiModelProperty(value="订单id",position=3)
    private String orderId;
    /**
    * 退款来源（0：充值失败：1：打赏失败；2：购买失败；3：平台赠送失败）
    * isnull 0
    */        @ApiModelProperty(value="退款来源（0：充值失败：1：打赏失败；2：购买失败；3：平台赠送失败）",position=4)
    private Integer refundType;
    /**
    * 退款途径（0：金额；1：小鱼干；2：猫粮；3：罐头）
    * isnull 0
    */        @ApiModelProperty(value="退款途径（0：金额；1：小鱼干；2：猫粮；3：罐头）",position=5)
    private Integer refundWay;
    /**
    * 退款金额数量
    * isnull 0
    */        @ApiModelProperty(value="退款金额数量",position=6)
    private Integer refundMoney;
    /**
    * 退款猫粮数量
    * isnull 0
    */        @ApiModelProperty(value="退款猫粮数量",position=7)
    private Integer refundCatfood;
    /**
    * 退款小鱼干数量
    * isnull 0
    */        @ApiModelProperty(value="退款小鱼干数量",position=8)
    private Integer refundFish;
    /**
    * 退款罐头数量
    * isnull 0
    */        @ApiModelProperty(value="退款罐头数量",position=9)
    private Integer refundCan;
    /**
    * 是否退款成功（0：成功；1：未成功）
    * isnull 0
    */        @ApiModelProperty(value="是否退款成功（0：成功；1：未成功）",position=10)
    private Integer isRefund;
    /**
    * 退款记录生成时间
    * isnull 0
    */        @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
        @ApiModelProperty(value="退款记录生成时间",position=11)
    private LocalDateTime createTime;
        
    public String getRefundId() {
        return refundId;
    }

    public void setRefundId(String refundId) {
        this.refundId = refundId;
    }
        
    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }
        
    public String getOrderId() {
        return orderId;
    }

    public void setOrderId(String orderId) {
        this.orderId = orderId;
    }
        
    public Integer getRefundType() {
        return refundType;
    }

    public void setRefundType(Integer refundType) {
        this.refundType = refundType;
    }
        
    public Integer getRefundWay() {
        return refundWay;
    }

    public void setRefundWay(Integer refundWay) {
        this.refundWay = refundWay;
    }
        
    public Integer getRefundMoney() {
        return refundMoney;
    }

    public void setRefundMoney(Integer refundMoney) {
        this.refundMoney = refundMoney;
    }
        
    public Integer getRefundCatfood() {
        return refundCatfood;
    }

    public void setRefundCatfood(Integer refundCatfood) {
        this.refundCatfood = refundCatfood;
    }
        
    public Integer getRefundFish() {
        return refundFish;
    }

    public void setRefundFish(Integer refundFish) {
        this.refundFish = refundFish;
    }
        
    public Integer getRefundCan() {
        return refundCan;
    }

    public void setRefundCan(Integer refundCan) {
        this.refundCan = refundCan;
    }
        
    public Integer getIsRefund() {
        return isRefund;
    }

    public void setIsRefund(Integer isRefund) {
        this.isRefund = isRefund;
    }
        
    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

        @Override
    public String toString() {
        return "{" +
                    " \"refundId\":" + refundId +
                                  " ,\"userId\":" + userId +
                            " ,\"orderId\":" + orderId +
                            " ,\"refundType\":" + refundType +
                            " ,\"refundWay\":" + refundWay +
                            " ,\"refundMoney\":" + refundMoney +
                            " ,\"refundCatfood\":" + refundCatfood +
                            " ,\"refundFish\":" + refundFish +
                            " ,\"refundCan\":" + refundCan +
                            " ,\"isRefund\":" + isRefund +
                            " ,\"createTime\":" + createTime +
                  '}';
    }


}
